██████╗ ███████╗████████╗██╗██████╗ ███████╗██████╗ ██╗ █████╗
██╔══██╗██╔════╝╚══██╔══╝██║██╔══██╗██╔════╝██╔══██╗██║██╔══██╗
██████╔╝█████╗ ██║ ██║██████╔╝█████╗ ██║ ██║██║███████║
██╔══██╗██╔══╝ ██║ ██║██╔═══╝ ██╔══╝ ██║ ██║██║██╔══██║
██║ ██║███████╗ ██║ ██║██║ ███████╗██████╔╝██║██║ ██║
╚═╝ ╚═╝╚══════╝ ╚═╝ ╚═╝╚═╝ ╚══════╝╚═════╝ ╚═╝╚═╝ ╚═╝
- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b- `b
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
Interpolazione
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
top
In mwbamatematica, e in particolare in mwbqanalisi numerica, per mwbginterpolazione si intende un metodo per individuare nuovi punti del piano cartesiano a partire da un mwbwinsieme finito di punti dati, nell'ipotesi che tutti i punti si possano riferire ad una funzione mwca f ( x ) {\displaystyle f(x)} di una data famiglia di funzioni di una variabile reale.
Nelle attività scientifiche e tecnologiche, e in genere negli studi quantitativi di qualsiasi fenomeno, accade molto spesso di disporre di un certo numero di punti del piano ottenuti con un campionamento o con apparecchiature di misura e di ritenere opportuno individuare una funzione che passi per tutti i punti dati o almeno nelle loro vicinanze (vedi mwcgcurve fitting).
Contents
• Esempio
• Note
──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Definizione del problema
Sia data una sequenza di mwdgn numeri reali mwdwdistinti mwea x k {\displaystyle \,x_{k}} chiamati mweqnodi e per ciascuno di questi mweg x k {\displaystyle \,x_{k}} sia dato un secondo numero mwew y k {\displaystyle \,y_{k}} . Ci proponiamo di individuare una funzione mwfa f {\displaystyle \,f} di una certa famiglia che sia in grado di descrivere una relazione tra l'insieme degli mwfq x k {\displaystyle \,x_{k}} e quello degli mwfg y k {\displaystyle \,y_{k}} , ovvero
mwgq f ( x k ) = y k per k = 1 , … … , n {\displaystyle f(x_{k})=y_{k}~~{\mbox{per}}~k=1,\ldots ,n} .
Una coppia mwgw ( x k , y k ) {\displaystyle \,(x_{k},y_{k})} viene chiamato mwhapunto dato ed mwhq f {\displaystyle \,f} viene detta mwhgfunzione interpolante, o semplicemente mwhwinterpolante, per i punti dati.
Talora i valori mwiq y k {\displaystyle \,y_{k}} , quando si intendono riferiti a una funzione definita, si scrivono mwig f k {\displaystyle \,f_{k}} .
Esempio
Si supponga di avere la seguente tabella, che dà alcuni valori di una funzione mwjq f ( x ) {\displaystyle \,f(x)} che si può considerare nota in altra sede.
| x {\displaystyle x} | f ( x ) {\displaystyle f(x)} |
|---|---|
| 0 | 0 |
| 1 | 0,8415 |
| 2 | 0,9093 |
| 3 | 0,1411 |
| 4 | -0,33 |
| 5 | -0,9589 |
| 6 | -0,2794 |
L'interpolazione consente di stabilire il valore di mwrw f ( x ) {\displaystyle \,f(x)} per valori di mwsa x {\displaystyle \,x} compresi tra gli estremi dell'intervallo in esame ma che non sono tra quelli per cui mwsq f ( x ) {\displaystyle \,f(x)} è noto, ad esempio per mwsg x ¯ ¯ = 2 , 5 {\displaystyle {\overline {x}}=2{,}5} .
Esistono molti metodi differenti di interpolazione; verranno di seguito descritti, a grandi linee, solo quelli più rilevanti per la comprensione della problematica.
Per capire se il metodo scelto e la funzione interpolante trovata sono adatti, occorre rispondere a quattro quesiti di linea generale:
• Quanto è esatto il metodo?
• Quanto è costoso computazionalmente il metodo?
• Quanto è buona la funzione interpolante?
• Quanti punti dati sono necessari per procedere?
Interpolazione lineare
Uno dei metodi più semplici è l'mwwqinterpolazione lineare. Si consideri di voler determinare mwwg f ( 2.5 ) {\displaystyle \,f(2.5)} nell'esempio precedente. Poiché 2.5 è il mwwwpunto medio fra 2 e 3, è ragionevole individuare mwxa f ( 2.5 ) {\displaystyle \,f(2.5)} come il valore medio fra mwxq f ( 2 ) = 0.9093 {\displaystyle \,f(2)=0.9093} e mwxg f ( 3 ) = 0.1411 {\displaystyle \,f(3)=0.1411} : in tal modo si ottiene mwxw f ( 2.5 ) = 0.5252 {\displaystyle \,f(2.5)=0.5252} .
In generale, l'interpolazione lineare per ogni coppia di punti dati consecutivi, denotati mwyq ( x a , y a ) {\displaystyle \,(x_{a},y_{a})} e mwyg ( x b , y b ) {\displaystyle \,(x_{b},y_{b})} , definisce come funzione interpolante nell'intervallo mwyw [ x a , x b ] {\displaystyle \,[x_{a},x_{b}]} :
mwzg f ( x ) = x − − x b x a − − x b y a − − x − − x a x a − − x b y b {\displaystyle f(x)={\frac {x-x_{b}}{x_{a}-x_{b}}}y_{a}-{\frac {x-x_{a}}{x_{a}-x_{b}}}y_{b}} .
Questa formula può essere interpretata come valutazione della mwaamedia ponderata.
L'interpolazione lineare è rapida e facile, ma non è molto precisa e porta ad ottenere una funzione non differenziabile nei punti mwag x k {\displaystyle \,x_{k}} .
La seguente stima dell'errore indica la scarsa precisione dell'interpolazione lineare. Indichiamo con mwba g ( x ) {\displaystyle \,g(x)} la funzione interpolante e supponiamo che la mwbq x {\displaystyle \,x} sia compresa fra mwbg x a {\displaystyle \,x_{a}} e mwbw x b {\displaystyle \,x_{b}} e che mwca g ( x ) {\displaystyle \,g(x)} sia due volte differenziabile. Allora l'errore dell'interpolazione lineare è
mwcw | f ( x ) − − g ( x ) | ≤ ≤ C ( x b − − x a ) 2 dove C = 1 8 max y ∈ ∈ [ x a , x b ] g ″ ( y ) {\displaystyle |f(x)-g(x)|\leq C(x_{b}-x_{a})^{2}\quad {\mbox{dove}}\quad C={\frac {1}{8}}~\max _{y\in [x_{a},x_{b}]}~g''(y)} .
Quindi, l'errore è proporzionale al quadrato della distanza fra i punti dati. Altri metodi, comprese l'interpolazione polinomiale e l'interpolazione spline, descritti di seguito, producono funzioni più lisce ed errori di interpolazione proporzionali a potenze superiori della distanza fra i punti dati, quindi sono preferibili.
Interpolazione polinomiale
L'interpolazione polinomiale può considerarsi una generalizzazione dell'interpolazione lineare. Mentre l'interpolante lineare è una sequenza di funzioni lineari, nell'interpolazione polinomiale si cerca come interpolante un mwfapolinomio di un grado opportuno (grado che nel caso dell'interpolazione lineare sarebbe pari a 1).
Per il problema dato sopra si trova che il seguente polinomio di sesto grado passa attraverso tutti i sette punti:
mwfw f ( x ) = − − 0.0001521 x 6 − − 0.003130 x 5 + 0.07321 x 4 − − 0.3577 x 3 + 0.2255 x 2 + 0.9038 x {\displaystyle \,f(x)=-0.0001521x^{6}-0.003130x^{5}+0.07321x^{4}-0.3577x^{3}+0.2255x^{2}+0.9038x} . Coefficients are 0, 0.903803333333334, 0.22549749999997, -0.35772291666664, 0.07321458333332, -0.00313041666667, -0.00015208333333. Assegnando mwga x = 2.5 {\displaystyle \,x=2.5} , troviamo che mwgq f ( 2.5 ) = 0.5965 {\displaystyle \,f(2.5)=0.5965} .
In generale, quando si hanno mwgwn punti dati, esiste esattamente un polinomio di grado mwhan−1 che passa attraverso tutti tali punti. L'errore di interpolazione è proporzionale alla distanza fra i punti dati elevata alla potenza mwhqn-esima. L'interpolante, inoltre, in quanto polinomio, è illimitatamente differenziabile. L'interpolazione polinomiale, quindi, evita tutte le difficoltà incontrate dalla interpolazione lineare.
Se si riprendono i 4 quesiti visti in precedenza, si vede che l'interpolazione polinomiale presenta alcuni svantaggi. Il calcolo del polinomio d'interpolazione è molto costoso in termini computazionali e l'interpolazione polinomiale non risulta molto esatta nell'intero dominio della funzione; in particolare nei punti estremi dell'intervallo si manifesta il cosiddetto mwhwfenomeno di Runge. Questi svantaggi possono essere evitati usando altre interpolazioni, in particolare l'interpolazione spline.
Interpolazione razionale
L'interpolazione razionale, simile a quella polinomiale, utilizza delle funzioni razionali mwiw R ( x ) = P ( x ) Q ( x ) {\displaystyle {R}(x)={\frac {P(x)}{Q(x)}}} .
I più noti metodi di interpolazione razionale sono
• Bulirsch - Stoer, da non confondere con quello per le mwjwequazioni differenzialicite-ref-1[1].
• Berrut, un miglioramento del precedentecite-ref-2[2]
• Hormann - Floatercite-ref-3[3]
Dei tre, l'ultimo non produce mai asintoti e garantisce un modesto errore anche con piccoli intervalli, anche con le funzioni che con i polinomi causano il fenomeno di Runge. Il vantaggio dell'approssimazione razionale è che, ad esempio nella funzione mwnw f ( x ) = ln ( x ) {\displaystyle f(x)=\ln(x)} , l'interpolazione polinomiale causa delle forti oscillazioni, soprattutto fuori dai valori tabellati (estrapolazione), mentre la razionale ha meno oscillazioni e coinvolge meno calcoli dell'interpolazione spline, essendo generalmente implementata in mwoa O ( n 2 ) {\displaystyle O(n^{2})} per il calcolo dei pesi, da farsi mwoqmwoguna tantum per i valori tabulati, e mwow O ( n ) {\displaystyle O(n)} per l'interpolazione.
Interpolazione spline
Mentre l'interpolazione lineare utilizza una funzione lineare per ciascuno degli intervalli mwqw [ x k , y k ] {\displaystyle \,[x_{k},y_{k}]} , la mwrainterpolazione spline si serve nei suddetti intervalli di polinomi di grado piccolo, scegliendoli in modo che due polinomi successivi si saldino in modo liscio. La funzione che si ottiene con un procedimento di questo genere si chiama mwrqfunzione spline.
Per esempio, la spline naturale cubica è a tratti cubica, due volte differenziabile e presenta derivata seconda uguale a zero nei punti finali. La spline naturale cubica che interpola i punti nella tabella qui sopra è così definita
mwsg f ( x ) = { − − 0.1522 x 3 + 0.9937 x , se x ∈ ∈ [ 0 , 1 ] , − − 0.01258 x 3 − − 0.4189 x 2 + 1.4126 x − − 0.1396 , se x ∈ ∈ [ 1 , 2 ] , 0.1403 x 3 − − 1.3359 x 2 + 3.2467 x − − 1.3623 , se x ∈ ∈ [ 2 , 3 ] , 0.1579 x 3 − − 1.4945 x 2 + 3.7225 x − − 1.8381 , se x ∈ ∈ [ 3 , 4 ] , 0.05375 x 3 − − 0.2450 x 2 − − 1.2756 x + 4.8259 , se x ∈ ∈ [ 4 , 5 ] , − − 0.1871 x 3 + 3.3673 x 2 − − 19.3370 x + 34.9282 , se x ∈ ∈ [ 5 , 6 ] . {\displaystyle f(x)=\left\{{\begin{matrix}-0.1522x^{3}+0.9937x,&{\mbox{se }}x\in [0,1],\\-0.01258x^{3}-0.4189x^{2}+1.4126x-0.1396,&{\mbox{se }}x\in [1,2],\\0.1403x^{3}-1.3359x^{2}+3.2467x-1.3623,&{\mbox{se }}x\in [2,3],\\0.1579x^{3}-1.4945x^{2}+3.7225x-1.8381,&{\mbox{se }}x\in [3,4],\\0.05375x^{3}-0.2450x^{2}-1.2756x+4.8259,&{\mbox{se }}x\in [4,5],\\-0.1871x^{3}+3.3673x^{2}-19.3370x+34.9282,&{\mbox{se }}x\in [5,6].\\\end{matrix}}\right.}
La funzione interpolante ottenuta con la interpolazione spline, come quella ottenuta con la mwtainterpolazione polinomiale, rispetto a quella ottenuta con l'interpolazione lineare, presenta errori inferiori, è più liscia, risulta più facile da valutare e non soffre del mwtqfenomeno di Runge.
Altre forme di interpolazione
Si individuano altri procedimenti di interpolazione servendosi di famiglie di interpolanti differenti. Si studiano quindi, per esempio, l'interpolazione razionale, cioè l'interpolazione mediante mwuqfunzioni razionali e l'interpolazione trigonometrica che si serve di polinomi trigonometrici. La mwvatrasformata discreta di Fourier è un caso speciale di interpolazione trigonometrica. Un'altra possibilità interessante consiste nell'utilizzare le cosiddette mwvqwavelets.
Quando si dispone di un insieme illimitato di punti dati si può adottare le formula interpolante di Nyquist-Shannon.
Si studia anche l'interpolazione multivariata, attività di interpolazione concernente le funzioni di più variabili reali. I suoi metodi includono interpolazione bilineare e interpolazione bicubica in due dimensioni e interpolazione trilineare in tre dimensioni.
In alcuni ambiti applicativi può accadere di disporre non solo di alcuni valori della funzione che vogliamo interpolare, ma anche di valori della sua derivata. In questi casi si trattano i cosiddetti problemi della mwxginterpolazione di Hermite.
Nozioni collegate
Si usa il termine mwyqmwygestrapolazione per l'attività finalizzata a trovare valori di una funzione reale mwyw f ( x ) {\displaystyle \,f(x)} per valori della mwza x {\displaystyle \,x} che sono al di fuori dell'intervallo dell'asse reale che contiene i punti mwzq x k {\displaystyle \,x_{k}} nei quali sono noti i valori che essa assume.
Nei problemi di mwzwregressione o di adattamento di curve (mw0qcurve fitting) si abbandona il vincolo che impone alla funzione interpolante di passare esattamente per i punti dati e si richiede solo una curva approssimante che si avvicini il più possibile ai punti dati.
Un problema diverso dalla interpolazione, ma strettamente collegato con esso, è l'approssimazione di una funzione complicata mediante una più semplice e che presenti un andamento simile. Supponiamo di conoscere la funzione di partenza mw0w f ( x ) {\displaystyle \,f(x)} , ma che questa sia tanto complessa da non potersi valutare efficientemente. Possiamo allora considerare un determinato insieme dei suoi punti e cercare di interpolarli per individuare una funzione mw1a a ( x ) {\displaystyle \,a(x)} più semplice. Naturalmente quando si utilizzerà la funzione approssimante per calcolare nuovi valori mw1q a ( x ¯ ¯ ) {\displaystyle \,a({\overline {x}})} si avranno risultati diversi dagli mw1g f ( x ¯ ¯ ) {\displaystyle \,f({\overline {x}})} ottenibili se calcolassimo la funzione originale; tuttavia, in certi ambiti applicativi e in seguito all'adozione di opportuni metodi di interpolazione, il vantaggio della maggiore semplicità e della conseguente maggiore manovrabilità può rendere poco rilevante l'errore.
La mw2ateoria dell'approssimazione studia come trovare la migliore approssimazione di una funzione mw2q f ( x ) {\displaystyle \,f(x)} con una funzione che appartiene ad una classe predeterminata e quanto risulta buona una tale funzione approssimante. Naturalmente si incontrano delle limitazioni a quanto una interpolante riesca ad approssimare la funzione originale.
Note
cite-note-11. ↑ mw4amw4qmw4gNumerical Recipes in C, II ed, (1992) §3.2 Rational Function Interpolation an Extrapolation (mw4wmw5aPDF), su mw5qnrbook.com. mw5gURL consultato il 3 giugno 2008 mw5w(archiviato dall'mw6aurl originale il 4 marzo 2012).
cite-note-22. ↑ mw7aJean–Paul Berrut, Richard Baltensperger, Hans D. Mittelmannin, mw7qmw7gRecent developments in barycentric rational interpolation (mw7wmw8aPDF), su mw8qplato.asu.edu, 2005. mw8gURL consultato il 03.06.2008.
cite-note-33. ↑ mw9gMichael S. Floater, Kai Hormann, mw9wmw-aBarycentric rational interpolation with no poles and high rates of approximation (mw-qmw-gPDF), su mw-wcg.in.tu-clausthal.de. mw-aURL consultato il 03.06.2008 mw-q(archiviato dall'mw-gurl originale il 16 novembre 2010).
Bibliografia
• Rice, Herbert Louis (1899) mwaqimwaqmThe theory and practice of interpolation; including mechanical quadrature and other important problems concerned with the tabular values of functions.
• Gibb, David (1915): mwaqumwaqyA course in interpolation and numerical integration for the mathematical laboratory.
• Whittaker, Edmund Taylor; Robinson G (1923): mwaqgmwaqkA short course in interpolation.
• Whittaker, Edmund Taylor; Robinson G (1924): mwaqsmwaqwThe calculus of observations, Blackie & Sons. (capitoli 1-4 per interpolazione polinomiale e capitolo 10 per interpolazione con mwaq0serie di Fourier).
• Abramowitz, Milton; Stegun, Irene (1972): mwaq8mwaraHandbook of Mathematical Functions, Dover. mwarep.877 (Capitolo 25).
• Comincioli, Valeriano (1990): mwarmAnalisi numerica. metodi, modelli, applicazioni, Capitolo 3, McGraw-Hill Italia. ISBN 88-386-0646-3
• H. Dym, B. Fritzsche, V. Katsnelson, B. Kirstein eds. (1997): mwaryTopics in Interpolation Theory, Birkhäuser, ISBN 3-7643-5723-1
• Kincaid, David; Cheney, Ward (2002): mwarkNumerical Analysis (3rd ed.), Chapter 6, Brooks/Cole. ISBN 0-534-38905-8
• Schatzman, Michelle (2002): mwarwNumerical Analysis: A Mathematical Introduction, Chapters 4 and 6. Clarendon Press, Oxford. ISBN 0-19-850279-6.
• George M. Phillips (2003): mwar8Interpolation and Approximation by Polynomials, Springer, ISBN 0-387-00215-4, pp.mwase 328
Altri progetti
Altri progetti
• Wikizionario
• Wikimedia Commons
• Wikizionario contiene il lemma di dizionario «interpolazione»
• Wikimedia Commons contiene immagini o altri file sull'interpolazione
Collegamenti esterni
• citereftreccani-itinterpolazione, su Treccani.it – Enciclopedie on line, Istituto dell'Enciclopedia Italiana.
• citerefbritannica-com(EN) interpolation, su Enciclopedia Britannica, Encyclopædia Britannica, Inc.
• citerefmathworld(EN) Eric W. Weisstein, Interpolation, su MathWorld, Wolfram Research.
• mwasgStrumento online per l'interpolazione cubica spline con visualizzazione e codice sorgente JavaScript, su tools.timodenk.com.